package com.itheima.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 学生实体
 * @author GY
 * @version V1.0
 * @date 2025-01-14 11:36
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Student {

    /**
     * 学生id
     */
    private Integer id;
    /**
     * 姓名
     */
    private String name;
    /**
     * 学号
     */
    private String no;
    /**
     * 性别(1: 男 , 2: 女)
     */
    private Integer gender;
    /**
     * 手机号
     */
    private String phone;
    /**
     * 身份证号
     */
    private String idCard;
    /**
     * 是否是院校学生 (1: 是, 0: 否)
     */
    private Integer isCollege;
    /**
     * 联系地址
     */
    private String address;
    /**
     * 学历(1:初中,2:高中,3:大专,4:本科,5:硕士,6:博士)
     */
    private Integer degree;
    /**
     * 毕业时间
      */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate graduationDate;
    /**
     * 班级ID
     */
    private Integer clazzId;
    /**
     * 违纪次数
     */
    private Integer violationCount;
    /**
     * 违纪扣分
     */
    private Integer violationScore;
    /**
     * 班级名称
     */
    private String clazzName;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     * 更新时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    //拓展字段
    private Integer page = 1;
    private Integer pageSize = 10;

    /**
     * id
     * name
     * no
     * gender
     * phone
     * id_card
     * is_college
     * address
     * degree
     * graduation_date
     * clazz_id
     * violation_count
     * violation_score
     * create_time
     * update_time
     */
}
